When developing a future release of a software application, software developers typically seek to implement a specific list of required features based on input from a product manager. The required features often includes a combination of new features not already present in the product, and bug fixes for resolving existing defects in the software application.
Product managers are typically tasked with determining which specific features, out of a large software development log, should be required features for a given release. The log (sometimes termed a “backlog”, particularly in the context of agile software development) may contain many thousands of entries. Prioritizing them and determining which features to include on the list for a given release is an arduous, time-consuming task for product managers, as additional entries may be added to the log frequently, and the competitive landscape of what features are included in other software programs can be challenging to monitor and analyze.